$(function(){
    submitClick();



    function submitClick(){
        var submit=$('#submit');
        var register=$('#register');
        var user=$('#user'),psw=$('#psw'),confirm=$('#confirm'),code=$('#code');
        var userVal,pswVal,confirmVal,codeVal,userBool=false,pswBool=false,confirmBool=false,codeBool=false;
        var checkLabel=$('#check label'),check=$('#check');
        var obj={
            user:{
                regU:/^[a-zA-Z_]\w{2,9}$/,
                textU:'*请输入字母或下划线开头，3到10位字符！'
            },
            psw:{
                regP:/^\d{6,12}$/,
                textP:'*请输入6到12位数字！'
            },
            confirm:{
                textC:'*密码和确认密码不相同！'
            }
        };
        user.blur(function(){
            var _this=$(this);
            userBool=blurJudge(user,obj.user.regU,obj.user.textU);
            if(userBool){
                var datas=_this.val();
                var Obj={name:datas,type:'getName'};
                requestEvent('post','../admin/register.php',Obj,function(res){
                    if(res.status){
                        _this.parents('li').find('b').text('*用户'+datas+'已被注册');
                        _this.parents('li').addClass('falseInp').removeClass('trueInp');
                        userBool=false;
                    }else {
                        userBool=true;
                    }
                });
            }
            if(userBool){
                psw.prop("disabled",false);
            }
        });
        psw.blur(function(){
            pswBool=blurJudge(psw,obj.psw.regP,obj.psw.textP);
            if(pswBool){
                confirm.prop("disabled",false);
            }
        });
        confirm.blur(function(){
            pswVal=psw.val();
            confirmVal=$(this).val();
            if(confirmVal){
                if(pswVal==confirmVal){
                    $(this).parents('li').addClass('trueInp').removeClass('falseInp');
                    $(this).parents('li').find('b').text('');
                    confirmBool= true;
                }else {
                    $(this).parents('li').addClass('falseInp').removeClass('trueInp');
                    $(this).parents('li').find('b').text(obj.confirm.textC);
                    confirmBool= false;
                }
            }
            if(confirmBool){
                code.prop("disabled",false);
            }
        });
        code.blur(function(){
            var _this=$(this);
            codeVal=_this.val();
            var obj={code:codeVal};
            requestEvent('post','../admin/register.php',obj,function(res){
                if(!res.status){
                    _this.parents('li').find('b').text('*验证码有误！');
                    _this.parents('li').addClass('falseInp').removeClass('trueInp');
                    codeBool=false;
                }else {
                    _this.parents('li').find('b').text('');
                    _this.parents('li').addClass('trueInp').removeClass('falseInp');
                    codeBool=true;
                }
            });
        });
        checkLabel.tap(function(){
            var bool=$(this).find('input').prop('checked');
            if(bool){
                submit.prop("disabled",false);
            }
        });
        $('#validate').tap(function(){
            $(this).attr('src', '../admin/code.php?w=98&h=48&fs=24&randon=' + Math.random());
        });
        submit.click(function(event){
            event.preventDefault();
            if(!$(this).prop('disabled')){
                if(userBool && pswBool && confirmBool  && codeBool){
                    check.find('b').text('');
                    var datas=register.serialize();
                    datas= stringChange(datas);
                    requestEvent('post','../admin/register.php',datas,function(res){
                        if(res.status){
                            window.location.href='login.html';
                        }else {
                            check.find('b').text('*请完善信息！');
                        }
                    });
                }
            }
        })
    }
    function stringChange(str){
        var newStr=str.split('&');
        var userObj={},i=newStr.length;
        for(;i--;){
            var item=newStr[i].split('=');
            userObj[item[0]]=decodeURIComponent(item[1]);
        }
        return userObj;
    }


    /*失去焦点判断*/
    function blurJudge(event,regU,text){
        var str=event.val();
        if(str){
            var bool=regU.test(str);
            if(bool){
                event.parents('li').addClass('trueInp').removeClass('falseInp');
                event.parents('li').find('b').text('');
                return true;
            }else {
                event.parents('li').addClass('falseInp').removeClass('trueInp');
                event.parents('li').find('b').text(text);
                return false;
            }
        }
    }
});
